var express = require('express');
var bodyParser = require('body-parser');

var app = express();

var comments = [
	{
		name: '张三1',
		message: '今天天气不错！',
		dateTime: '2019-02-19',
	},
	{
		name: '张三2',
		message: '今天天气不错！',
		dateTime: '2019-02-19',
	},
	{
		name: '张三3',
		message: '今天天气不错！',
		dateTime: '2019-02-19',
	},
	{
		name: '张三4',
		message: '今天天气不错！',
		dateTime: '2019-02-19',
	},
	{
		name: '张三5',
		message: '今天天气不错！',
		dateTime: '2019-02-19',
	},
];

app.use('/public/', express.static('./public/'));

//在 express 中配置使用 art-template 模板引擎
// 第一个参数表示，当渲染以 .art 结尾的文件时，使用 art-template
// express-art-template 是 express 把 art-template 整合到 express中 使用
app.engine('html', require('express-art-template'));

//express 为 response 相应对象提供了一个方法： render
// res.render('html模板名',{模板数据})
//第一个参数是文件名，不能写路径，默认会去项目的 views 目录中查找该模板文件

//想要修改默认 views 目录
// app.set('views',其它路径)

//配置 body-parser 中间件（插件），让 express 使用表单 POST 请求体数据
// parse application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({ extended: false }));

// parse application/json
app.use(bodyParser.json());

app.get('/', function (req, res) {
	res.render('index.html', {
		comments,
	});
});

app.get('/admin', function (req, res) {
	res.render('admin/index.html', {
		title: '管理员',
	});
});

app.get('/post', function (req, res) {
	res.render('post.html');
});

// 以 POST 方法请求 /post
app.post('/post', function (req, res) {
	//1.获取表单请求数据 2.处理 3.发送响应
	// req.query 只能拿 get 请求参数
	// console.log(req.query);
	var comment = req.body;
	comment.dateTime = '2020-02-09 11:12:23';
	comments.unshift(comment);
	res.redirect('/'); //重定向到 /
	//res.send res.redirect 等方法 express 会自动结束响应，不用手动 res.end
});

// app.get('/pinglun', function (req, res) {
// 	var comment = req.query;
// 	comment.dateTime = '2020-02-09 11:12:23';
// 	comments.unshift(comment);
// 	res.redirect('/'); //重定向到 /
// });

app.listen(3000, function () {
	console.log('feedback-express is running...');
});
